﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services;

namespace Acme.BookStore.PurchaseDto.CustomergoodsDto
{
    public interface ICustomergoodsService:ICrudAppService<
        CustomergoodsDto, Guid, PagedAndSortedResultRequestDto,CreateUpdateCustomergoodsDto>
    {
        Task<ListResultDto<OrderTypeModelDto>> GetOrderTypeModelAsync();
        public class OrderTypeModelDto
        { 
            public int Id { get; set; }
            public string Name { get; set; }
        }

        Task<ListResultDto<ReservedWarehouseAreaModelDto>> GetReservedWarehouseAreaModelAsync();
        public class ReservedWarehouseAreaModelDto
        {
            public int Id { get; set; }
            public string Name { get; set; }
        }

        Task<ListResultDto<WarehouseModelDto>> GetWarehouseModelAsync();
        public class WarehouseModelDto
        {
            public int Id { get; set; }
            public string Name { get; set; }
        }

        Task<PagedResultDto<CustomergoodsDto>> GetListByConditionsAsync(CustomgoodsQueryDto input);

        //Task<List<GoodCodeDto>> GetGoodCodeListAsync(Guid customergoodsId);
    }   
}
